package pe.com.bn.sach.service.impl;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Hashtable;
import java.util.List;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.log4j.Logger;

import java.sql.Connection;


import pe.com.bn.sach.dao.TasadorDAO;
import pe.com.bn.sach.domain.Bnchf40Tasador;
import pe.com.bn.sach.service.MantenimientoService;
import pe.com.bn.sach.dao.CargoDAO;
import pe.com.bn.sach.dao.CreditoHipotecarioDAO;
import pe.com.bn.sach.dao.GiroDAO;
import pe.com.bn.sach.dao.Comentario02DAO;
import pe.com.bn.sach.dao.ItemDAO;
import pe.com.bn.sach.dao.MantenimientoDAO;
import pe.com.bn.sach.dao.NacionalidadDAO;
import pe.com.bn.sach.dao.NotariaDAO;
import pe.com.bn.sach.dao.ObservacionesDAO;
import pe.com.bn.sach.dao.MotivoDAO;
import pe.com.bn.sach.dao.OficinaRegistralDAO;
import pe.com.bn.sach.dao.PagoServicioDAO;
import pe.com.bn.sach.dao.PromotorDAO;
import pe.com.bn.sach.dao.BrokerDAO;

import pe.com.bn.sach.dao.PolizaDAO;

import pe.com.bn.sach.seguridad.DatosSesion;
import pe.com.bn.sach.domain.Bnchf04Comentario;
import pe.com.bn.sach.domain.Bnchf05ObservacionesId;
import pe.com.bn.sach.domain.Bnchf09Profesion;
import pe.com.bn.sach.domain.Bnchf11Nacionalidad;
import pe.com.bn.sach.domain.Bnchf14CentroHipotecario;
import pe.com.bn.sach.domain.Bnchf16Programa;
import pe.com.bn.sach.domain.Bnchf17GrupoObjetivo;
import pe.com.bn.sach.domain.Bnchf18Destino;
import pe.com.bn.sach.domain.Bnchf19Modalidad;
import pe.com.bn.sach.domain.Bnchf20Producto;
import pe.com.bn.sach.domain.Bnchf33PagoServicio;
import pe.com.bn.sach.domain.Bnchf03Motivo;
import pe.com.bn.sach.domain.Bnchf05Observaciones;
import pe.com.bn.sach.domain.Bnchf27GiroActividad;
import pe.com.bn.sach.domain.Bnchf28OcupacionCargo;
import pe.com.bn.sach.domain.Bnchf04ComentarioId;
import pe.com.bn.sach.domain.Bnchf13Expediente;
import pe.com.bn.sach.domain.Bnchf34OficinaRegistral;
import pe.com.bn.sach.domain.Bnchf37Promotor;
import pe.com.bn.sach.domain.Bnchf39Notaria;
import pe.com.bn.sach.domain.Bnchf41UnidadProc;
import pe.com.bn.sach.domain.Bnchf38Broker;
import pe.com.bn.sach.domain.Bnchf45GrupoDestino;
import pe.com.bn.sach.domain.Bnchf54ParametroProducto;
import pe.com.bn.sach.domain.Bnchf55Moneda;
import pe.com.bn.sach.domain.Bnchf60Sede;
import pe.com.bn.sach.domain.Bnchf61Poliza;
import pe.com.bn.sach.domain.Bnchf63InstitucionEmpresa;
import pe.com.bn.sach.domain.MantenimientoHost;

 
public class MantenimientoServiceImpl implements MantenimientoService{
	private static Logger log = Logger.getLogger(MantenimientoServiceImpl.class.getName());
	TasadorDAO tasadorDao;
	NotariaDAO notariaDao;

	Comentario02DAO comentarioDAO;
	ObservacionesDAO observacionesDao;
	MotivoDAO motivoDAO; 
	BrokerDAO brokerDAO;
	PagoServicioDAO pagoservicioDAO;
	PolizaDAO polizaDAO;
	MantenimientoDAO MantenimientoDao;
	CreditoHipotecarioDAO creditoHipotecarioDAO;
	OficinaRegistralDAO oficinaregistralDAO;
	ItemDAO itemDAO;
	NacionalidadDAO nacionalidadDAO;
	private GiroDAO giroDao;
	
    protected final Log logger = LogFactory.getLog(getClass());
	/*****************************
	 COMENTARIO    
	 * @throws Exception
	 * @throws Exception
	 * @throws Exception
	******************************/
	//parametro cobranza
    
	public List listarBNCHF02(MantenimientoHost bnchf54BNCHF02,Connection cnx) throws Exception{
		return MantenimientoDao.listarBNCHF02(bnchf54BNCHF02,cnx); 
		}
	public MantenimientoHost encontrarBNCHF02(MantenimientoHost bnchf54BNCHF02,Connection cnx) throws Exception{
		return MantenimientoDao.encontrarBNCHF02(bnchf54BNCHF02,cnx);
		}
	public String  guardarBNCHF02(MantenimientoHost bnchf54BNCHF02,Connection cnx)throws Exception{
		return MantenimientoDao.guardarBNCHF02(bnchf54BNCHF02,cnx);
		}
	public String  modificarBNCHF02(MantenimientoHost bnchf54BNCHF02,Connection cnx)throws Exception{
		return MantenimientoDao.modificarBNCHF02(bnchf54BNCHF02,cnx);
		};
	public String bajarBNCHF02(MantenimientoHost bnchf54BNCHF02,Connection cnx)throws Exception{
		return MantenimientoDao.bajarBNCHF02(bnchf54BNCHF02,cnx);
		}; 

	
	public List listarComentarioxExpediente(String idExpediente)throws Exception{
		
			
		return comentarioDAO.listarComentarioxExpediente(idExpediente); 
		}
	
	
    List metodoBurbujaFechas(List listTarifa){    	
    	List tarifasLisNew=new ArrayList();
    	List tarifasLis=new ArrayList();
    	MantenimientoHost bnchf54BNCHF06New=new MantenimientoHost();
    	tarifasLis=listTarifa;
    	
    	for (int i = 0; i < listTarifa.size(); i++) {
    		bnchf54BNCHF06New=new MantenimientoHost();
    		bnchf54BNCHF06New=(MantenimientoHost)tarifasLis.get(i);   		
    		bnchf54BNCHF06New.setF06Timestampt(formatToTimesTamp(bnchf54BNCHF06New.getF06TimestampStr()));    		
    		tarifasLisNew.add(bnchf54BNCHF06New);
    	}
     	MantenimientoHost mantenimientoHost;
     	MantenimientoHost mantenimientoHost1;
     	MantenimientoHost mantenimientoHostNew;
     		for (int i = 0; i < tarifasLisNew.size(); i++) {
         		for(int j=0;j<tarifasLisNew.size()-1;j++){
         			mantenimientoHost=new MantenimientoHost();
         			mantenimientoHost1=new MantenimientoHost();     			
         			mantenimientoHost=(MantenimientoHost)tarifasLisNew.get(j);
         			mantenimientoHost1=(MantenimientoHost)tarifasLisNew.get(j+1);    			
         			
         			boolean rpta=mantenimientoHost.getF06Timestampt().before(mantenimientoHost1.getF06Timestampt());     			     			
         		
         			
         			if(rpta){     				
         				Timestamp timestampt= mantenimientoHost.getF06Timestampt();
         				// temps init
         				String codCentroHip=mantenimientoHost.getF06CodCentroHip();
         				String codTarifa=mantenimientoHost.getF06CodTarifa();
         				String timestampStr=mantenimientoHost.getF06TimestampStr();     				
         				String desTarifa=mantenimientoHost.getF06DesTarifa();
         				String codEstado=mantenimientoHost.getF06CodEstado();
         				Double segInmbl=mantenimientoHost.getF06SegInmbl();
         				Double portes=mantenimientoHost.getF06Portes();     				
         				Double mtoComiEval=mantenimientoHost.getF06MtoComiEval();     				
         				Double costoChqGer=mantenimientoHost.getF06CostoChqGer();
         				Double itf=mantenimientoHost.getF06Itf();
         				String codUsuario=mantenimientoHost.getF06CodUsuario();
         				String centHipotecario=mantenimientoHost.getF06CentHipotecario();
         				// temps end      				
         				//a[j]= a[j+1];
         				mantenimientoHost.setF06Timestampt(mantenimientoHost1.getF06Timestampt());     				
         				mantenimientoHost.setF06CodCentroHip(mantenimientoHost1.getF06CodCentroHip());
         				mantenimientoHost.setF06CodTarifa(mantenimientoHost1.getF06CodTarifa());     				
         				mantenimientoHost.setF06TimestampStr(mantenimientoHost1.getF06TimestampStr());
         				mantenimientoHost.setF06DesTarifa(mantenimientoHost1.getF06DesTarifa());
         				mantenimientoHost.setF06CodEstado(mantenimientoHost1.getF06CodEstado());
         				mantenimientoHost.setF06SegInmbl(mantenimientoHost1.getF06SegInmbl());
         				mantenimientoHost.setF06Portes(mantenimientoHost1.getF06Portes());
         				mantenimientoHost.setF06MtoComiEval(mantenimientoHost1.getF06MtoComiEval());    				
         				mantenimientoHost.setF06CostoChqGer(mantenimientoHost1.getF06CostoChqGer());
         				mantenimientoHost.setF06Itf(mantenimientoHost1.getF06Itf());
         				mantenimientoHost.setF06CodUsuario(mantenimientoHost1.getF06CodUsuario());
         				mantenimientoHost.setF06CodUsuario(mantenimientoHost1.getF06CodUsuario());     				
         				mantenimientoHost.setF06CentHipotecario(mantenimientoHost1.getF06CentHipotecario());
         				//a[j+1]= temp
         				mantenimientoHost1.setF06Timestampt(timestampt);     				
         				mantenimientoHost1.setF06CodCentroHip(codCentroHip);
         				mantenimientoHost1.setF06CodTarifa(codTarifa);     				
         				mantenimientoHost1.setF06TimestampStr(timestampStr);
         				mantenimientoHost1.setF06DesTarifa(desTarifa);
         				mantenimientoHost1.setF06CodEstado(codEstado);
         				mantenimientoHost1.setF06SegInmbl(segInmbl);
         				mantenimientoHost1.setF06Portes(portes);
         				mantenimientoHost1.setF06MtoComiEval(mtoComiEval);    				
         				mantenimientoHost1.setF06CostoChqGer(costoChqGer);
         				mantenimientoHost1.setF06Itf(itf);
         				mantenimientoHost1.setF06CodUsuario(codUsuario);
         				mantenimientoHost1.setF06CodUsuario(codUsuario);     				
         				mantenimientoHost1.setF06CentHipotecario(centHipotecario);
         			}
         		}	
    		}
     	List listTarifa2=new ArrayList();
     	//adiciona prelacion
     	
     	for (int i = 0; i < tarifasLisNew.size(); i++) { 
     		mantenimientoHost =new MantenimientoHost();
     		mantenimientoHost=(MantenimientoHost)tarifasLisNew.get(i);    		
     		
     		listTarifa2.add(mantenimientoHost);
     	}
     	return listTarifa2;
     }

    
    
	private  Timestamp formatToTimesTamp(String dateStr){
		try {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd-HH.mm.ss.SSSSSS");
			//java.util.Date date = sdf.parse("2004-07-24 09:45:52.189");
			java.util.Date date = sdf.parse(dateStr);
			java.sql.Timestamp timestamp = new java.sql.Timestamp(date.getTime());			
			return timestamp;
		} catch (Exception e) {
			
			try {
				SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd-HH.mm.ss.SSSSSS");
				//java.util.Date date = sdf.parse("2004-07-24 09:45:52.189");
				java.util.Date date = sdf.parse(dateStr);
				java.sql.Timestamp timestamp = new java.sql.Timestamp(date.getTime());			
				return timestamp;				
				
			} catch (Exception e1) {
				// TODO: handle exception
				return null;
			}
			// TODO: handle exception
		}
	}
	public String ActualizarModalidadDestino(List ModalidadList,Long idDestino) throws Exception{
		return MantenimientoDao.ActualizarModalidadDestino(ModalidadList,idDestino);
	}
	
	public Hashtable listarDestinoModalidad(Long idDestino) throws Exception{		
		return MantenimientoDao.listarDestinoModalidad(idDestino);
		}
	
	

	public List listarXCHBNCHF06CONSULTA(String idCodTarifa ,String codigoCh,Connection cnx) throws Exception{		
		
		List listTarifa=new ArrayList();		
		List listNew=new ArrayList();
		listTarifa=MantenimientoDao.listarXCHBNCHF06CONSULTA(idCodTarifa ,codigoCh,cnx);
	
		listNew=metodoBurbujaFechas(listTarifa);
		return listNew;
		}
	
	public List listarXCHBNCHF06(String idCodTarifa ,String codigoCh,Connection cnx) throws Exception{
		
		
		List listTarifa=new ArrayList();		
		List listNew=new ArrayList();
		listTarifa=MantenimientoDao.listarXCHBNCHF06(idCodTarifa ,codigoCh,cnx);
		listNew=metodoBurbujaFechas(listTarifa);
		return listNew;

		
	}
	
	
	public List listarProfesion(Bnchf09Profesion bnchf09Profesion)
	throws Exception{
		return itemDAO.listProfesion(bnchf09Profesion);
	}
	public void guardarMotivo(Bnchf03Motivo bnchf03Motivo) throws Exception{
		motivoDAO.guardarMotivo(bnchf03Motivo);
	}
	
	public void actualizarMotivo(Bnchf03Motivo bnchf03Motivo) throws Exception{
		motivoDAO.actualizarMotivo(bnchf03Motivo);
	}
	public List buscarMotivo(Bnchf03Motivo bnchf03Motivo) throws Exception{
		return motivoDAO.listMotivo(bnchf03Motivo);
	} 
	
	public List listarNotaria(Bnchf39Notaria bnchf39Notaria) throws Exception{return MantenimientoDao.listarNotaria(bnchf39Notaria);}
	public Bnchf39Notaria encontrarNotaria(Bnchf39Notaria bnchf39Notaria) throws Exception{return MantenimientoDao.encontrarNotaria(bnchf39Notaria);}
	public String  guardarNotaria(Bnchf39Notaria bnchf39Notaria)throws Exception{return MantenimientoDao.guardarNotaria(bnchf39Notaria);}
	public String  modificarNotaria(Bnchf39Notaria bnchf39Notaria)throws Exception{return MantenimientoDao.modificarNotaria(bnchf39Notaria);}
	public String bajarNotaria(Bnchf39Notaria bnchf39Notaria)throws Exception{return MantenimientoDao.bajarNotaria(bnchf39Notaria);}
	
	public List listarBroker(Bnchf38Broker bnchf38Broker) throws Exception{return MantenimientoDao.listarBroker(bnchf38Broker);}
	public Bnchf38Broker encontrarBroker(Bnchf38Broker bnchf38Broker) throws Exception{return MantenimientoDao.encontrarBroker(bnchf38Broker);}
	public String  guardarBroker(Bnchf38Broker bnchf38Broker)throws Exception{return MantenimientoDao.guardarBroker(bnchf38Broker);}
	public String  modificarBroker(Bnchf38Broker bnchf38Broker)throws Exception{return MantenimientoDao.modificarBroker(bnchf38Broker);}
	public String bajarBroker(Bnchf38Broker bnchf38Broker)throws Exception{return MantenimientoDao.bajarBroker(bnchf38Broker);}



	public List listarTasador(Bnchf40Tasador bnchf40Tasador) throws Exception{return MantenimientoDao.listarTasador(bnchf40Tasador);}
	public Bnchf40Tasador encontrarTasador(Bnchf40Tasador bnchf40Tasador) throws Exception{return MantenimientoDao.encontrarTasador(bnchf40Tasador);}
	public String  guardarTasador(Bnchf40Tasador bnchf40Tasador)throws Exception{
		
		try {
			
			 MantenimientoDao.guardarTasador(bnchf40Tasador);
		} catch (Exception e) {
			// TODO: handle exception
			log.error("		TODO: handle exception	"+e);	
			}
		return"";
		
		}
	public String  modificarTasador(Bnchf40Tasador bnchf40Tasador)throws Exception{return MantenimientoDao.modificarTasador(bnchf40Tasador);}
	public String bajarTasador(Bnchf40Tasador bnchf40Tasador)throws Exception{return MantenimientoDao.bajarTasador(bnchf40Tasador);}



	public List listarPromotor(Bnchf37Promotor bnchf37Promotor) throws Exception{return MantenimientoDao.listarPromotor(bnchf37Promotor);}	
	public Bnchf37Promotor encontrarPromotorMante(Bnchf37Promotor bnchf37Promotor) throws Exception{return MantenimientoDao.encontrarPromotor(bnchf37Promotor);}
	public String  guardarPromotor(Bnchf37Promotor bnchf37Promotor)throws Exception{return MantenimientoDao.guardarPromotor(bnchf37Promotor);}
	public String  modificarPromotor(Bnchf37Promotor bnchf37Promotor)throws Exception{return MantenimientoDao.modificarPromotor(bnchf37Promotor);}
	public String bajarPromotor(Bnchf37Promotor bnchf37Promotor)throws Exception{return MantenimientoDao.bajarPromotor(bnchf37Promotor);}
	

	
	public List listarInstitucionEmpresa(Bnchf63InstitucionEmpresa bnchf39InstitucionEmpresa) throws Exception{return MantenimientoDao.listarInstitucionEmpresa(bnchf39InstitucionEmpresa);}
	public Bnchf63InstitucionEmpresa encontrarInstitucionEmpresa(Bnchf63InstitucionEmpresa bnchf39InstitucionEmpresa) throws Exception{return MantenimientoDao.encontrarInstitucionEmpresa(bnchf39InstitucionEmpresa);}
	public String  guardarInstitucionEmpresa(Bnchf63InstitucionEmpresa bnchf39InstitucionEmpresa)throws Exception{return MantenimientoDao.guardarInstitucionEmpresa(bnchf39InstitucionEmpresa);}
	public String  modificarInstitucionEmpresa(Bnchf63InstitucionEmpresa bnchf39InstitucionEmpresa)throws Exception{return MantenimientoDao.modificarInstitucionEmpresa(bnchf39InstitucionEmpresa);}
	public String bajarInstitucionEmpresa(Bnchf63InstitucionEmpresa bnchf39InstitucionEmpresa)throws Exception{return MantenimientoDao.bajarInstitucionEmpresa(bnchf39InstitucionEmpresa);}
	
	
	
	/*	CentroHipotecario SERVICE IMPL   	*/

	public List listarCentroHipotecario(Bnchf14CentroHipotecario bnchf14CentroHipotecario) throws Exception{return MantenimientoDao.listarCentroHipotecario(bnchf14CentroHipotecario);}
	public Bnchf14CentroHipotecario encontrarCentroHipotecario(Bnchf14CentroHipotecario bnchf14CentroHipotecario) throws Exception{return MantenimientoDao.encontrarCentroHipotecario(bnchf14CentroHipotecario);}
	public String  guardarCentroHipotecario(Bnchf14CentroHipotecario bnchf14CentroHipotecario,Connection cnx)throws Exception{return MantenimientoDao.guardarCentroHipotecario(bnchf14CentroHipotecario,cnx);}
	public String  modificarCentroHipotecario(Bnchf14CentroHipotecario bnchf14CentroHipotecario,Connection cnx)throws Exception{return MantenimientoDao.modificarCentroHipotecario(bnchf14CentroHipotecario,cnx);}
	public String bajarCentroHipotecario(Bnchf14CentroHipotecario bnchf14CentroHipotecario,Connection cnx)throws Exception{return MantenimientoDao.bajarCentroHipotecario(bnchf14CentroHipotecario,cnx);}
	
	public String  guardarAgenciaCentroHipotecario(Bnchf14CentroHipotecario bnchf14CentroHipotecario,List agenciasList,String g)throws Exception{return MantenimientoDao.guardarAgenciaCentroHipotecario(bnchf14CentroHipotecario,agenciasList,g);}
	public List listaCentroHipotecarioActivos() throws Exception{return creditoHipotecarioDAO.listaCentroHipotecarioActivos();}
	
	/*	Programa SERVICE IMPL   	*/

	public List listarPrograma(Bnchf16Programa bnchf16Programa) throws Exception{return MantenimientoDao.listarPrograma(bnchf16Programa);}
	public Bnchf16Programa encontrarPrograma(Bnchf16Programa bnchf16Programa) throws Exception{return MantenimientoDao.encontrarPrograma(bnchf16Programa);}
	public String  guardarPrograma(Bnchf16Programa bnchf16Programa,Connection cnx)throws Exception{return MantenimientoDao.guardarPrograma(bnchf16Programa,cnx);}
	public String  modificarPrograma(Bnchf16Programa bnchf16Programa,Connection cnx)throws Exception{return MantenimientoDao.modificarPrograma(bnchf16Programa,cnx);}
	public String bajarPrograma(Bnchf16Programa bnchf16Programa,Connection cnx)throws Exception{return MantenimientoDao.bajarPrograma(bnchf16Programa,cnx);}
	
	


	/*	GrupoObjetivo SERVICE IMPL   	*/

	public List listarGrupoObjetivo(Bnchf17GrupoObjetivo bnchf17GrupoObjetivo) throws Exception{return MantenimientoDao.listarGrupoObjetivo(bnchf17GrupoObjetivo);}
	public Bnchf17GrupoObjetivo encontrarGrupoObjetivo(Bnchf17GrupoObjetivo bnchf17GrupoObjetivo) throws Exception{return MantenimientoDao.encontrarGrupoObjetivo(bnchf17GrupoObjetivo);}
	public String  guardarGrupoObjetivo(Bnchf17GrupoObjetivo bnchf17GrupoObjetivo,Connection cnx)throws Exception{return MantenimientoDao.guardarGrupoObjetivo(bnchf17GrupoObjetivo,cnx);}
	public String  modificarGrupoObjetivo(Bnchf17GrupoObjetivo bnchf17GrupoObjetivo,Connection cnx)throws Exception{return MantenimientoDao.modificarGrupoObjetivo(bnchf17GrupoObjetivo,cnx);}
	public String bajarGrupoObjetivo(Bnchf17GrupoObjetivo bnchf17GrupoObjetivo,Connection cnx)throws Exception{return MantenimientoDao.bajarGrupoObjetivo(bnchf17GrupoObjetivo,cnx);}
	
	/*		*/ 
	public List listarCargo(Bnchf28OcupacionCargo bnchf28OcupacionCargo) throws Exception{return MantenimientoDao.listarCargo(bnchf28OcupacionCargo);}
	public Bnchf28OcupacionCargo encontrarCargo(Bnchf28OcupacionCargo bnchf28OcupacionCargo) throws Exception{return MantenimientoDao.encontrarCargo(bnchf28OcupacionCargo);}
	public String  guardarCargo(Bnchf28OcupacionCargo bnchf28OcupacionCargo) throws Exception{return MantenimientoDao.guardarCargo(bnchf28OcupacionCargo);}
	public String  modificarCargo(Bnchf28OcupacionCargo bnchf28OcupacionCargo) throws Exception{return MantenimientoDao.modificarCargo(bnchf28OcupacionCargo);}
	public String bajarCargo(Bnchf28OcupacionCargo bnchf28OcupacionCargo) throws Exception{return MantenimientoDao.bajarCargo(bnchf28OcupacionCargo);}
	 
	/*	Destino SERVICE IMPL   	*/
	public List listarDestino(Bnchf18Destino bnchf18Destino) throws Exception{return MantenimientoDao.listarDestino(bnchf18Destino);}
	public Bnchf18Destino encontrarDestino(Bnchf18Destino bnchf18Destino) throws Exception{return MantenimientoDao.encontrarDestino(bnchf18Destino);}
	public String  guardarDestino(Bnchf18Destino bnchf18Destino,Connection cnx)throws Exception{return MantenimientoDao.guardarDestino(bnchf18Destino,cnx);}
	public String  modificarDestino(Bnchf18Destino bnchf18Destino,Connection cnx)throws Exception{return MantenimientoDao.modificarDestino(bnchf18Destino,cnx);}
	public String bajarDestino(Bnchf18Destino bnchf18Destino,Connection cnx)throws Exception{return MantenimientoDao.bajarDestino(bnchf18Destino,cnx);}
	
	
	/*	Moneda SERVICE IMPL   	*/

	public List listarMoneda(Bnchf55Moneda bnchf55Moneda) throws Exception{return MantenimientoDao.listarMoneda(bnchf55Moneda);}
	public Bnchf55Moneda encontrarMoneda(Bnchf55Moneda bnchf55Moneda) throws Exception{return MantenimientoDao.encontrarMoneda(bnchf55Moneda);}
	public String  guardarMoneda(Bnchf55Moneda bnchf55Moneda,Connection cnx)throws Exception{return MantenimientoDao.guardarMoneda(bnchf55Moneda,cnx);}
	public String  modificarMoneda(Bnchf55Moneda bnchf55Moneda,Connection cnx)throws Exception{return MantenimientoDao.modificarMoneda(bnchf55Moneda,cnx);}
	public String bajarMoneda(Bnchf55Moneda bnchf55Moneda,Connection cnx)throws Exception{return MantenimientoDao.bajarMoneda(bnchf55Moneda,cnx);}
	
	/*	Modalidad SERVICE IMPL   	*/

	public List listarModalidad(Bnchf19Modalidad bnchf19Modalidad) throws Exception{return MantenimientoDao.listarModalidad(bnchf19Modalidad);}
	public Bnchf19Modalidad encontrarModalidad(Bnchf19Modalidad bnchf19Modalidad) throws Exception{return MantenimientoDao.encontrarModalidad(bnchf19Modalidad);}
	public String  guardarModalidad(Bnchf19Modalidad bnchf19Modalidad,Connection cnx)throws Exception{return MantenimientoDao.guardarModalidad(bnchf19Modalidad,cnx);}
	public String  modificarModalidad(Bnchf19Modalidad bnchf19Modalidad,Connection cnx)throws Exception{return MantenimientoDao.modificarModalidad(bnchf19Modalidad,cnx);}
	public String bajarModalidad(Bnchf19Modalidad bnchf19Modalidad,Connection cnx)throws Exception{return MantenimientoDao.bajarModalidad(bnchf19Modalidad,cnx);}
	
	
	 
	/*	GrupoDestino SERVICE IMPL   	*/
	public List listarComboGrupoDestino() throws Exception{return MantenimientoDao.listarComboGrupoDestino();}
	
	public List listarGrupoDestino(Bnchf45GrupoDestino bnchf45GrupoDestino) throws Exception{return MantenimientoDao.listarGrupoDestino(bnchf45GrupoDestino);}
	public Bnchf45GrupoDestino encontrarGrupoDestino(Bnchf45GrupoDestino bnchf45GrupoDestino) throws Exception{return MantenimientoDao.encontrarGrupoDestino(bnchf45GrupoDestino);}
	public String  guardarGrupoDestino(Bnchf45GrupoDestino bnchf45GrupoDestino)throws Exception{return MantenimientoDao.guardarGrupoDestino(bnchf45GrupoDestino);}
	public String  modificarGrupoDestino(Bnchf45GrupoDestino bnchf45GrupoDestino)throws Exception{return MantenimientoDao.modificarGrupoDestino(bnchf45GrupoDestino);}
	public String bajarGrupoDestino(Bnchf45GrupoDestino bnchf45GrupoDestino)throws Exception{return MantenimientoDao.bajarGrupoDestino(bnchf45GrupoDestino);}
	
	/* Parametro Producto */
	public List listarParametroProducto(Bnchf54ParametroProducto bnchf54ParametroProducto) throws Exception{return MantenimientoDao.listarParametroProducto(bnchf54ParametroProducto);}
	public Bnchf54ParametroProducto encontrarParametroProducto(Bnchf54ParametroProducto bnchf54ParametroProducto) throws Exception{return MantenimientoDao.encontrarParametroProducto(bnchf54ParametroProducto);}
	public String  guardarParametroProducto(Bnchf54ParametroProducto bnchf54ParametroProducto)throws Exception{return MantenimientoDao.guardarParametroProducto(bnchf54ParametroProducto);}
	public String  modificarParametroProducto(Bnchf54ParametroProducto bnchf54ParametroProducto)throws Exception{return MantenimientoDao.modificarParametroProducto(bnchf54ParametroProducto);}
	public String bajarParametroProducto(Bnchf54ParametroProducto bnchf54ParametroProducto)throws Exception{return MantenimientoDao.bajarParametroProducto(bnchf54ParametroProducto);}
	 
	/*tabla tarifa de host */
	public List ListarBNCHF15(MantenimientoHost bnchf54BNCHF15,Connection cnx) throws Exception{return MantenimientoDao.ListarBNCHF15(bnchf54BNCHF15,cnx);}
	public List listarBNCHF06(MantenimientoHost bnchf54BNCHF06,Connection cnx) throws Exception{
		List li=new ArrayList();
		li=selectDistinc(MantenimientoDao.listarBNCHF06(bnchf54BNCHF06,cnx));	
		return li;
		}
	public MantenimientoHost encontrarBNCHF06(MantenimientoHost bnchf54BNCHF06,Connection cnx) throws Exception{return MantenimientoDao.encontrarBNCHF06(bnchf54BNCHF06,cnx);}
	public String  guardarBNCHF06(MantenimientoHost bnchf54BNCHF06,Connection cnx)throws Exception{return MantenimientoDao.guardarBNCHF06(bnchf54BNCHF06,cnx);}
	public String  modificarBNCHF06(MantenimientoHost bnchf54BNCHF06,Connection cnx)throws Exception{return MantenimientoDao.modificarBNCHF06(bnchf54BNCHF06,cnx);}
	public String bajarBNCHF06(MantenimientoHost bnchf54BNCHF06,Connection cnx)throws Exception{return MantenimientoDao.bajarBNCHF06(bnchf54BNCHF06,cnx);}

	//service impl
	/* */
	public List listarProducto(Bnchf20Producto bnchf20Producto) throws Exception{return MantenimientoDao.listarProducto(bnchf20Producto);}
	public Bnchf20Producto encontrarProducto(Bnchf20Producto bnchf20Producto) throws Exception{return MantenimientoDao.encontrarProducto(bnchf20Producto);}
	public String  guardarProducto(Bnchf20Producto bnchf20Producto,Connection cnx)throws Exception{return MantenimientoDao.guardarProducto(bnchf20Producto,cnx);}
	public String  modificarProducto(Bnchf20Producto bnchf20Producto,Connection cnx)throws Exception{return MantenimientoDao.modificarProducto(bnchf20Producto,cnx);}
	public String bajarProducto(Bnchf20Producto bnchf20Producto)throws Exception{return MantenimientoDao.bajarProducto(bnchf20Producto);}
	//combos
	
	public List comboPrograma(Bnchf16Programa bnchf16Programa) throws Exception{return MantenimientoDao.comboPrograma(bnchf16Programa);}
	public List comboGrupoObjetivo() throws Exception{return MantenimientoDao.comboGrupoObjetivo();} 
	public List comboMoneda(Bnchf55Moneda bnchf55Moneda) throws Exception{return MantenimientoDao.comboMoneda(bnchf55Moneda);}
	public List comboDestino(Bnchf18Destino bnchf18Destino) throws Exception{return MantenimientoDao.comboDestino(bnchf18Destino);}	
	public List comboGrupoDestino() throws Exception{return MantenimientoDao.comboGrupoDestino();}
	public List comboModalidad(Bnchf19Modalidad bnchf19Modalidad) throws Exception{return MantenimientoDao.comboModalidad(bnchf19Modalidad);}
		
	//
	
	
	
	public Bnchf33PagoServicio buscarPagosinStado(Bnchf33PagoServicio bnchf33PagoServicio) throws Exception
	{
		return pagoservicioDAO.buscarPagosinStado(bnchf33PagoServicio);
	}
	public Bnchf61Poliza buscarPoliza(Bnchf61Poliza bnchf61PolizaInmueble) throws Exception
	{
		
		return polizaDAO.buscarPoliza(bnchf61PolizaInmueble);
	
	}
	public void updateStadoPagoServ(Bnchf33PagoServicio bnchf33PagoServicio) throws Exception{
		pagoservicioDAO.updateStadoPagoServ(bnchf33PagoServicio);
	}
	public Bnchf33PagoServicio buscarPago(Bnchf33PagoServicio bnchf33PagoServicio) throws Exception{
		return pagoservicioDAO.buscarPagosinStado(bnchf33PagoServicio);
	}
	
	public void guardarPagoServicio(Bnchf33PagoServicio bnchf33PagoServicio) throws Exception
	{
			if(bnchf33PagoServicio.getF33IdPago()==null)
		pagoservicioDAO.guardarPago(bnchf33PagoServicio);
		else
		pagoservicioDAO.updateStadoPagoServ(bnchf33PagoServicio);
		
	}
	
	public void guardarPoliza(Bnchf61Poliza bnchf61PolizaInmueble) throws Exception
	{
		
		
	
		if(bnchf61PolizaInmueble.getF61IdPoliza()==null)
		polizaDAO.GuardaPoliza(bnchf61PolizaInmueble);
		else
			polizaDAO.ActualizaPoliza(bnchf61PolizaInmueble);
	}
	
	public List buscaBroker(Bnchf38Broker bnchf38Broker) throws Exception
	{
		
		return brokerDAO.buscaBroker(bnchf38Broker);
	}
	
	public List
 listarComentario(String idExpediente,String idUp) throws Exception
	{
		Bnchf04ComentarioId bnchf04ComentarioId = new Bnchf04ComentarioId();
			Bnchf13Expediente bnchf13Expediente = new Bnchf13Expediente();
				bnchf13Expediente.setF13IdExpediente(idExpediente);
				
			Bnchf41UnidadProc bnchf41UnidadProc = new Bnchf41UnidadProc();
				bnchf41UnidadProc.setF41IdUnidProc(new Long(idUp));
				bnchf04ComentarioId.setBnchf13Expediente(bnchf13Expediente);
				bnchf04ComentarioId.setBnchf41UnidadProc(bnchf41UnidadProc);
		Bnchf04Comentario bnchf04Comentario = new Bnchf04Comentario();
		bnchf04Comentario.setId(bnchf04ComentarioId);
	
		List l = comentarioDAO.listarComentario(bnchf04Comentario);
		
		return l;
	}
	
	
	public void insertComentario(String idExpediente,String idUp,String Comentario,DatosSesion datosSesion) throws Exception
	{
		Bnchf04ComentarioId bnchf04ComentarioId = new Bnchf04ComentarioId();
		Bnchf13Expediente bnchf13Expediente = new Bnchf13Expediente();
			bnchf13Expediente.setF13IdExpediente(idExpediente);
			
		Bnchf41UnidadProc bnchf41UnidadProc = new Bnchf41UnidadProc();
			bnchf41UnidadProc.setF41IdUnidProc(new Long(idUp));
			bnchf04ComentarioId.setBnchf13Expediente(bnchf13Expediente);
			bnchf04ComentarioId.setBnchf41UnidadProc(bnchf41UnidadProc);
			
	Bnchf04Comentario bnchf04Comentario = new Bnchf04Comentario();
	bnchf04Comentario.setId(bnchf04ComentarioId);
	bnchf04Comentario.setF04DescComent(Comentario);
	bnchf04Comentario.setF04IdUsrInst(new Long(datosSesion.getCodigoUsuario()));
	bnchf04Comentario.setF04IdUsuaCrea(datosSesion.getCodigoUsuario());
	if(Comentario!=null)if(Comentario.length()!=0)
	{
		comentarioDAO.insertComentario(bnchf04Comentario);
	}
		
	}
	
	
	
	public List listarObervaciones(String idExpediente,String idUp) throws Exception
	{
		Bnchf05ObservacionesId bnchf05ObservacionesId = new Bnchf05ObservacionesId();
			Bnchf13Expediente bnchf13Expediente = new Bnchf13Expediente();
				bnchf13Expediente.setF13IdExpediente(idExpediente);
				
			Bnchf41UnidadProc bnchf41UnidadProc = new Bnchf41UnidadProc();
				bnchf41UnidadProc.setF41IdUnidProc(new Long(idUp));
				bnchf05ObservacionesId.setBnchf13Expediente(bnchf13Expediente);
				bnchf05ObservacionesId.setBnchf41UnidadProc(bnchf41UnidadProc);
		Bnchf05Observaciones bnchf05Observaciones = new Bnchf05Observaciones();
		bnchf05Observaciones.setId(bnchf05ObservacionesId);
	
		List l = observacionesDao.listObservaciones(bnchf05Observaciones);
		
		return l;
	}
	
	public void insertObservacion(String idExpediente,String idUp,String idMotivo,String Observacion,DatosSesion datosSesion) throws Exception
	{
		Bnchf05ObservacionesId bnchf05ObservacionesId = new Bnchf05ObservacionesId();
		Bnchf13Expediente bnchf13Expediente = new Bnchf13Expediente();
			bnchf13Expediente.setF13IdExpediente(idExpediente);
			
		Bnchf41UnidadProc bnchf41UnidadProc = new Bnchf41UnidadProc();
			bnchf41UnidadProc.setF41IdUnidProc(new Long(idUp));
		Bnchf03Motivo bnchf03Motivo = new Bnchf03Motivo();
		
			bnchf05ObservacionesId.setBnchf13Expediente(bnchf13Expediente);
			bnchf05ObservacionesId.setBnchf41UnidadProc(bnchf41UnidadProc);
			
	Bnchf05Observaciones bnchf05Observaciones = new Bnchf05Observaciones();
	
	
		if(idMotivo !=null)
				if(idMotivo.length()!=0) 
					if(Observacion !=null)
						if(Observacion.length()!=0)
		{
			
			bnchf03Motivo.setF03IdMotivo(new Long(idMotivo));
			bnchf05Observaciones.setBnchf03Motivo(bnchf03Motivo);
			bnchf05Observaciones.setId(bnchf05ObservacionesId);
			bnchf05Observaciones.setF05DescObserv(Observacion);
			
			bnchf05Observaciones.setF05IdUsuaCrea(datosSesion.getCodigoUsuario());
			bnchf05Observaciones.setF05IdUsrInst(new Long(datosSesion.getCodigoUsuario()));
			
			  observacionesDao.insertObservaciones(bnchf05Observaciones); 
			  
		}
	}

	public List listarMotivo(String txtMovito) throws Exception
	{
		Bnchf03Motivo bnchf03Motivo = new Bnchf03Motivo(); 
		bnchf03Motivo.setF03DesMotivo(txtMovito);
		List l = motivoDAO.listMotivo(bnchf03Motivo);
		return l;
	}
	//////Vilia
	
	public void guardarOficinaRegistral(Bnchf34OficinaRegistral bnchf34OficinaRegistral) throws Exception{
		oficinaregistralDAO.guardarOficinaRegistral(bnchf34OficinaRegistral);
	}
	public void actualizarOficinaRegistral(Bnchf34OficinaRegistral bnchf34OficinaRegistral) throws Exception{
		oficinaregistralDAO.actualizarOficinaRegistral(bnchf34OficinaRegistral);
		}
	public List buscarOficinaRegistral(Bnchf34OficinaRegistral bnchf34OficinaRegistral) throws Exception{
		return oficinaregistralDAO.buscarOficinaRegistral(bnchf34OficinaRegistral);
		}
	public List listarOficinaRegistral() throws Exception{
		return oficinaregistralDAO.listarOficinaRegistral();
		}
	public void guardarSede(Bnchf60Sede bnchf60Sede) throws Exception{
		oficinaregistralDAO.guardarSede(bnchf60Sede);
		}
	public void actualizarSede(Bnchf60Sede bnchf60Sede) throws Exception{
		oficinaregistralDAO.actualizarSede(bnchf60Sede);
		}
	public List buscarSede(Bnchf60Sede bnchf60Sede) throws Exception{
		return oficinaregistralDAO.buscarSede(bnchf60Sede);
		}
	public List listarSede() throws Exception{
		return oficinaregistralDAO.listarSede();
		}
	public List buscarSedexOfi(Bnchf60Sede bnchf60Sede) throws Exception{
		return oficinaregistralDAO.buscarSedexOfi(bnchf60Sede);
		}
	public void guardarProfesion(Bnchf09Profesion bnchf09Profesion) throws Exception{
		itemDAO.guardarProfesion(bnchf09Profesion);
		}
	public void actualizarProfesion(Bnchf09Profesion bnchf09Profesion) throws Exception{
		itemDAO.actualizarProfesion(bnchf09Profesion);
		}
	public List buscarProfesion(Bnchf09Profesion bnchf09Profesion) throws Exception{
		return itemDAO.buscarProfesion(bnchf09Profesion);
		}
	
	public void guardarNacionalidad(Bnchf11Nacionalidad bnchf15Nacionalidad)throws Exception{
		nacionalidadDAO.guardarNacionalidad(bnchf15Nacionalidad);
	}
	
	public void actualizarNacionalidad(Bnchf11Nacionalidad bnchf15Nacionalidad)throws Exception{
		nacionalidadDAO.actualizarNacionalidad(bnchf15Nacionalidad);
	}
	public List listarNacionalidad(Bnchf11Nacionalidad bnchf15Nacionalidad) throws Exception{    
		return nacionalidadDAO.listarNacionalidad(bnchf15Nacionalidad);
	}
	public List buscarNacionalidad(Bnchf11Nacionalidad bnchf15Nacionalidad) throws Exception{    
		return nacionalidadDAO.buscarNacionalidad(bnchf15Nacionalidad);
	}
	public void guardarGiro(Bnchf27GiroActividad bnchf27Giro)throws Exception{
		giroDao.guardarGiro(bnchf27Giro);
	}
	public List busquedaGiro(Bnchf27GiroActividad bnchf27Giro)throws Exception{
		return giroDao.busquedaGiro(bnchf27Giro);
		}
	public void actualizarGiro(Bnchf27GiroActividad bnchf27Giro)throws Exception{
		giroDao.actualizarGiro(bnchf27Giro);
		}
	public List listarGiro(Bnchf27GiroActividad bnchf27Giro)throws Exception{
		return giroDao.listarGiro(bnchf27Giro);
		}
	////////////// WILBER
	PromotorDAO promotorDao;
	public List buscarPromotor(Bnchf37Promotor bnchf37Promotor) throws Exception{
		return promotorDao.buscarPromotor(bnchf37Promotor);
	}
	public Bnchf37Promotor encontrarPromotor(Bnchf37Promotor bnchf37Promotor)throws Exception{
		return promotorDao.encontrarPromotor(bnchf37Promotor);
	}
	
	public void setPromotorDao(PromotorDAO promotorDao) {
		this.promotorDao = promotorDao;
	}
	
	
	
	public void setTasadorDao(TasadorDAO tasadorDao) {
		this.tasadorDao = tasadorDao;
	}

	public List listTasador() throws Exception{
		return tasadorDao.listTasador();
	}
	public void GuardaTasador(Bnchf40Tasador Bnchf40Tasador) throws Exception{
		tasadorDao.GuardaTasador(Bnchf40Tasador);
	}
	public List buscarTasador(Bnchf40Tasador bnchf40Tasador) throws Exception{
		
		 

		return tasadorDao.buscarTasador(bnchf40Tasador);
	}
	
	public void setNotariaDao(NotariaDAO notariaDao) {
		this.notariaDao = notariaDao;
	}

	public List listNotaria() throws Exception{
		return notariaDao.listNotaria();
	}
	
	public List buscarNotaria(Bnchf39Notaria bnchf39Notaria) throws Exception{
		return notariaDao.buscarNotaria(bnchf39Notaria);
	}
	

	public List buscarGiro(Bnchf27GiroActividad bnchf27Giro) throws Exception{
		return giroDao.buscarGiro(bnchf27Giro);
	}
	private CargoDAO cargoDao;
	public List buscarCargo(Bnchf28OcupacionCargo bnchf28Cargo) throws Exception{
		return cargoDao.buscarCargo(bnchf28Cargo);
	}
	public void setGiroDao(GiroDAO giroDao) {
		this.giroDao = giroDao;
	}
	public void setCargoDao(CargoDAO cargoDao) {
		this.cargoDao = cargoDao;
	}

	public void setObservacionesDao(ObservacionesDAO observacionesDao) {
		this.observacionesDao = observacionesDao;
	}
	public void setComentarioDAO(Comentario02DAO comentarioDAO) {
		this.comentarioDAO = comentarioDAO;
	}
	
	
	
	public void setPolizaDAO(PolizaDAO polizaDAO) {
		this.polizaDAO = polizaDAO;
	}
	public void setPagoservicioDAO(PagoServicioDAO pagoservicioDAO) {
		this.pagoservicioDAO = pagoservicioDAO;
	}
	public void setBrokerDAO(BrokerDAO brokerDAO) {
		this.brokerDAO = brokerDAO;
	}
	public void setMotivoDAO(MotivoDAO motivoDAO) {
		this.motivoDAO = motivoDAO;
	}
	/**
	 * @param mantenimientoDao El mantenimientoDao a establecer.
	 */
	public void setMantenimientoDao(MantenimientoDAO mantenimientoDao) {
		MantenimientoDao = mantenimientoDao;
		
	}
	
	/**
	 * @param oficinaregistralDAO El oficinaregistralDAO a establecer.
	 */
	public void setOficinaregistralDAO(OficinaRegistralDAO oficinaregistralDAO) {
		this.oficinaregistralDAO = oficinaregistralDAO;
	}
	/**
	 * @param itemDAO El itemDAO a establecer.
	 */
	public void setItemDAO(ItemDAO itemDAO) {
		this.itemDAO = itemDAO;
	}
	/**
	 * @param nacionalidadDAO El nacionalidadDAO a establecer.
	 */
	public void setNacionalidadDAO(NacionalidadDAO nacionalidadDAO) {
		this.nacionalidadDAO = nacionalidadDAO;
	}
	
	
	/**
	 * @param creditoHipotecarioDAO El creditoHipotecarioDAO a establecer.
	 */
	public void setCreditoHipotecarioDAO(
			CreditoHipotecarioDAO creditoHipotecarioDAO) {
		this.creditoHipotecarioDAO = creditoHipotecarioDAO;
	}
	
	List selectDistinc(List tarifasLis){
		List newList=new ArrayList();
		MantenimientoHost bean=new MantenimientoHost();		
		for (int i = 0; i < tarifasLis.size(); i++) {
			bean=new MantenimientoHost();    		
			bean=(MantenimientoHost)tarifasLis.get(i);			
			int rptaIndex=verficaSiExisteEnLaLista(bean.getF06CodCentroHip(),bean.getF06CodTarifa(),newList);
			
   			if(rptaIndex!=-1){
   				Timestamp timestampBean=formatToTimesTamp(bean.getF06TimestampStr()) ;   				
   				Timestamp timestampNewList=formatToTimesTamp(((MantenimientoHost)newList.get(rptaIndex)).getF06TimestampStr()) ;
   				
   				
   				
   				
   				if(timestampBean.after(timestampNewList)){
   						newList.set(rptaIndex,bean);
   					}
    		}else{
    			newList.add(bean);
    			}
		}
		MantenimientoHost bean1=new MantenimientoHost();
		for (int i = 0; i < newList.size(); i++) {
			bean1=new MantenimientoHost();    		
			bean1=(MantenimientoHost)newList.get(i);

		}
		return newList;
	}
	
	
	// -1 es quieres dicer que no existe en la lista
	int verficaSiExisteEnLaLista(String codCentroHip ,String codTarifa,List array){		
		int returnIndex=-1;
		

		MantenimientoHost bean=new MantenimientoHost(); 
		for (int i = 0; i < array.size(); i++) {			
			bean=new MantenimientoHost();
			bean=(MantenimientoHost)array.get(i);

			if(codCentroHip.equals(bean.getF06CodCentroHip()) && codTarifa.equals(bean.getF06CodTarifa())){
				returnIndex=i;
				break;
			}
		}
		

		
		return returnIndex; 
	}
	
   public boolean validacionDeTiposDocumentos(Hashtable ht) throws Exception{   	
   	boolean rptaValidacion=false;   	
   	 
   	
   	
	if(ht.get("Tabla").toString().equals("37")){
		rptaValidacion=MantenimientoDao.VerificarDocumentoPromotor((Long)ht.get("TipoDocumento"),(String)ht.get("NroDocumento"));
	}
	if(ht.get("Tabla").toString().equals("38")){
		
		rptaValidacion=MantenimientoDao.VerificarDocumentoBroker((Long)ht.get("TipoDocumento"),(String)ht.get("NroDocumento"));
	}
	if(ht.get("Tabla").toString().equals("39")){
		
		//("	{		Tabla		 39  }");
		try {
			rptaValidacion=MantenimientoDao.VerificarDocumentoNotaria((String)ht.get("Ruc"));	
		} catch (Exception e) {
			log.error("Exception e	"+e);
			// TODO: handle exception
		}
		
	}
	if(ht.get("Tabla").toString().equals("40")){		
		rptaValidacion=MantenimientoDao.VerificarDocumentoTasador(Integer.parseInt((String)ht.get("TipoTasador")+""),(Long)ht.get("TipoDocumento"),(String)ht.get("NroDocumento"));
	}
	if(ht.get("Tabla").toString().equals("63")){
		//("	{		Tabla		 63  }");
		rptaValidacion=MantenimientoDao.VerificarDocumentoInstitucionEmpresa((String)ht.get("Ruc"));
	}
	
   	return  rptaValidacion;
   	
   }
   

   public List ListarProductoCombo() throws Exception{ return MantenimientoDao.ListarProductoCombo(); }
   
   // mantenimiento tabla host
    public String  guardarTablaHost(MantenimientoHost mnt,Connection cnx)throws Exception{ return MantenimientoDao.guardarTablaHost(mnt,cnx); }
	public String  modificarTablaHost(MantenimientoHost mnt,Connection cnx)throws Exception{ return MantenimientoDao.modificarTablaHost(mnt,cnx); }
	public List  listarTablaHost(MantenimientoHost mnt,Connection cnx)throws Exception{ return MantenimientoDao.listarTablaHost(mnt,cnx); }
	  
	public MantenimientoHost  encontrarTablaHost(MantenimientoHost mnt,Connection cnx)throws Exception{ return MantenimientoDao.encontrarTablaHost(mnt,cnx);}
	public String verificaSiExiste( MantenimientoHost mnt,Connection cnx) throws Exception{ return MantenimientoDao.verificaSiExiste(mnt,cnx);}

}
